home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FM Towns: Free Software Collection 6
/
FM Towns Free Software Collection 6.iso
/
t_os
/
ttt
/
ttt.bas
next >
Wrap
BASIC Source File
|
1993-07-08
|
4KB
|
155 lines
1000 'Tiny Translator Towns
1010 'Vulture Software vol.3
1020 'Ver1.0 L02 93/02/23
1030 '
1040 CLEAR ,,512,76800*2+1024,0,300*1024
1050 DIM G%(76800)
1060 SCREEN@ 1
1070 SCREEN 1,1,3,0
1080 CLS 0
1090 SCREEN 1,0
1100 ON ERROR GOTO *ER_RES
1110 '
1120 LOOP=1
1130 WHILE LOOP
1140 COLOR 1
1150 SCREEN 1,1,3,1
1160 SCREEN 0
1170 LINE (20,20)-STEP(16*10,16*7),PSET,1,BF
1180 LINE (16,16)-STEP(16*10,16*7),PSET,7,BF
1190 LOCATE 5, 2 : PRINT "1.LOAD TIFF,JPG"
1200 LOCATE 5, 3 : PRINT "2.SAVE TIFF[非圧縮]"
1210 LOCATE 5, 4 : PRINT "3.SAVE TIFF[圧縮]"
1220 LOCATE 5, 5 : PRINT "4.SAVE JPG"
1230 LOCATE 5,12 : PRINT "file:";LF$
1240 LOCATE 5, 6 : INPUT "0-4=",JOB$
1250 JOB=VAL(JOB$)
1260 IF JOB=0 AND JOB$<>"0" THEN 1160
1270 IF JOB>1 AND LOOP=1 THEN 1290
1280 ON JOB+1 GOSUB *Q,*GL,*GSTN,*GSTL,*GSJ
1290 WEND
1300 END
1310 '
1320 *Q
1330 END
1340 '
1350 *GL
1360 LOCATE 5,7 : LINE INPUT "file_name=",LF$
1370 IF LF$<>"" THEN
1380 SCREEN 1,0,1,0
1390 LOAD@ LF$
1400 GET@A (0,0)-(319,239),G%
1410 LOOP=2
1420 ENDIF
1430 RETURN
1440 '
1450 *GSTN
1460 LOCATE 5,7 : LINE INPUT "file_name=",SF$
1470 IF SF$<>"" THEN
1480 IF INSTR(SF$,".")>0 THEN ERROR 200
1490 SCREEN 1,0,1,0
1500 PUT@A (0,0)-(319,239),G%
1510 SF$=SF$+".TIF"
1520 SAVE@ SF$,(0,0)-(319,239),,0
1530 ENDIF
1540 RETURN
1550 '
1560 *GSTL
1570 LOCATE 5,7 : LINE INPUT "file_name=",SF$
1580 IF SF$<>"" THEN
1590 IF INSTR(SF$,".")>0 THEN ERROR 200
1600 SCREEN 1,0,1,0
1610 PUT@A (0,0)-(319,239),G%
1620 SF$=SF$+".TIF"
1630 SAVE@ SF$,(0,0)-(319,239),,1
1640 ENDIF
1650 RETURN
1660 '
1670 *GSJ
1680 LOCATE 5, 7 : LINE INPUT "file_name=",SF$
1690 IF SF$<>"" THEN
1700 IF INSTR(SF$,".")>0 THEN ERROR 200
1710 LOCATE 5, 8 : INPUT "成分比YCbCr (1/2/4) =",YCC$
1720 IF YCC$<>"1" AND YCC$<>"2" AND YCC$<>"4" THEN 1870
1730 YCC=VAL(YCC$)
1740 LOCATE 5, 9 : INPUT "輝度圧縮率Y (0-[25]-100)=",Y$
1750 IF Y$="" THEN Y$="25"
1760 Y=VAL(Y$)
1770 IF Y$<>MID$(STR$(Y),2) THEN 1870
1780 LOCATE 5,10 : INPUT "彩度圧縮率C (0-[25]-100)=",C$
1790 IF C$="" THEN C$="25"
1800 C=VAL(C$)
1810 IF C$<>MID$(STR$(C),2) THEN 1870
1820 SCREEN 1,0,1,0
1830 PUT@A (0,0)-(319,239),G%
1840 SF$=SF$+".JPG"
1850 SAVE@ SF$,(0,0)-(319,239),,2,YCC,Y,C
1860 ENDIF
1870 RETURN
1880 '
1890 'エラー処理
1900 *ER_RES
1910 SCREEN 0
1920 CLS 1
1930 LINE (20,20)-STEP(16*10,16*7),PSET,1,BF
1940 LINE (16,16)-STEP(16*10,16*7),PSET,7,BF
1950 COLOR 2
1960 IF ERR= 2 THEN *ER_2
1970 IF ERR= 63 THEN *ER_63
1980 IF ERR= 64 THEN *ER_64
1990 IF ERR= 65 THEN *ER_65
2000 IF ERR= 67 THEN *ER_67
2010 IF ERR=200 THEN *ER_200
2020 GOTO *ER_EXT
2030 '文法(LOAD時)エラー
2040 *ER_2
2050 LOCATE 5,2 : PRINT "拡張子[.TIF/.JPG]をつけて、"
2060 LOCATE 5,3 : PRINT " 正確に指定してください。"
2070 I$=INPUT$(1)
2080 GOTO *ER_RECV
2090 '指定ファイル無し
2100 *ER_63
2110 LOCATE 5,2 : PRINT "[";LF$;"]が見つかりません。"
2120 I$=INPUT$(1)
2130 GOTO *ER_RECV
2140 '既存ファイルあり
2150 *ER_64
2160 LOCATE 5,2 : PRINT "[";SF$;"]"
2170 LOCATE 5,3 : PRINT "上書きはできません。"
2180 I$=INPUT$(1)
2190 GOTO *ER_RECV
2200 'ディレクトリ領域に空きが無い
2210 *ER_65
2220 LOCATE 5,2 : PRINT "ディレクトリ領域がいっぱいです。"
2230 I$=INPUT$(1)
2240 GOTO *ER_RECV
2250 'ディスクに空き領域が足りない
2260 *ER_67
2270 LOCATE 5,2 : PRINT "ディスク容量が足りません。"
2280 I$=INPUT$(1)
2290 GOTO *ER_RECV
2300 'FAT破壊?
2310 *ER_71
2320 LOCATE 5,2 : PRINT "FATが破壊されています。"
2330 I$=INPUT$(1)
2340 'ファイル操作時に拡張子を指定した
2350 *ER_200
2360 LOCATE 5,2 : PRINT "拡張子[.TIF/.JPG]は、"
2370 LOCATE 5,3 : PRINT " 指定しないで下さい。"
2380 I$=INPUT$(1)
2390 GOTO *ER_RECV
2400 '
2410 'エラー復帰
2420 *ER_RECV
2430 IF ERL=1390 THEN RESUME 1430
2440 IF ERL=1480 THEN RESUME 1540
2450 IF ERL=1520 THEN RESUME 1540
2460 IF ERL=1590 THEN RESUME 1650
2470 IF ERL=1630 THEN RESUME 1650
2480 IF ERL=1700 THEN RESUME 1870
2490 IF ERL=1850 THEN RESUME 1870
2500 'その他のエラー
2510 *ER_EXT
2520 PRINT "DANGER!! ERR:";ERR;" ERL:";ERL
2530 END